$(document).ready(function(){
	common.body_to_all();
	update_js.bind();
	$("#page_title").html("修改家庭成员");
});
var update_js = {};
update_js.bind = function(){
	//现在这里没法设置时间值
	$('#datetime').mobiscroll().date({
		lang: 'zh',
		maxDate: new Date(),
		stepMinute: 5,
		dateFormat:"yyyy-mm-dd",
	});		
	//每次动画完结过要除去动画样式
	$(document).on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend','.animated',function(){
		$(this).removeClass('shake');
	});	
}
var vm = avalon.define({
//---------微信上传---------
	weixin_images: {
		//这个就是图片的地址
		localIds: [],
		//上传用的media_id
		serverIds: []
	},
	//直接上传图片
	weixin_upload: function() {
		//选择图片
		wx.chooseImage({
			success: function(res) {
				if(res.localIds.length<=0){
					return ;
				}
				if (res.localIds.length > 1) {
					vm.toast_msg = "只能上传一张图片";
					vm.is_toast_show = true;
					vm.clear_toast();
					return;
				}
				vm.weixin_images.localIds = [];
				vm.weixin_images.serverIds = [];
				//res.localIds是一个数组
				vm.weixin_images.localIds.pushArray(res.localIds);
				//选择完之后直接上传到微信
				//递归上传
				vm.weixin_upload_item();
			}
		});
	},
	/**
	 * 直接执行上传
	 * @param {Object} callback 回调函数
	 */
	weixin_upload_item: function(callback) {
		wx.uploadImage({
			localId: vm.weixin_images.localIds[0],
			success: function(res) {
				vm.img_url = vm.img_data = vm.weixin_images.localIds[0];
				vm.weixin_images.serverIds.push(res.serverId);
			},
			fail: function(res) {
				//alert(JSON.stringify(res));
			}
		});
	},
	//end---------微信上传---------	
	//标记是否显示遮罩
	is_mask_show:false,	
	$id:"main_controller",
	//初始化
	init:function(){
//		$("#show_img").get(0).onload = function() {
//			var naturalHeight = this.naturalHeight;
//			var naturalWidth = this.naturalWidth;
//			var canvas = $('<canvas width="' + naturalWidth + '" height="' + naturalHeight + '"></canvas>')[0],
//				ctx = canvas.getContext('2d');
//			ctx.drawImage($('#show_img').get(0), 0, 0, naturalWidth, naturalHeight, 0, 0, naturalWidth, naturalHeight);
//			var mime_type = "image/jpeg";
//			var quality = 0.5; //质量比例
//			var data = canvas.toDataURL(mime_type, quality);
//			vm.img_data = data;
//		}		
	},
	//标记是否是本人
	flag:common.getUrlParam('flag'),
	//加载数据
	load:function(){
		vm.is_mask_show = true;
		$.ajax({
			type:"get",
			url:load_url,
			dataType:"json",
			data:"id="+common.getUrlParam("id")+"&flag="+vm.flag,
			success:function(data){
				vm.is_mask_show = false;
				vm.phone = data.phone;
				vm.height = data.height;
				vm.weight = data.weight;
				vm.name = data.name;
				vm.birth = data.birth;
				vm.img_url = data.img_url;
				vm.sex = data.sex;
			},
			error:function(){
				vm.is_mask_show = false;
				vm.toast_msg = "网络错误";
				vm.is_toast_show = true;
				vm.clear_toast();					
			},
		});		
	},
	//下面都是展示modal的方法
	show_name:function(){
		$("#modal-name").modal('show');
		vm.lin_name = vm.name;
		$("#modal-name .modal-backdrop").unbind('click');
	},
	show_phone:function(){
		$("#modal-phone").modal('show');
		vm.lin_phone = vm.phone;
		$("#modal-phone .modal-backdrop").unbind('click');
	},
	show_height:function(){
		$("#modal-height").modal('show');
		vm.lin_height = vm.height;
		$("#modal-height .modal-backdrop").unbind('click');
	},
	show_weight:function(){
		$("#modal-weight").modal('show');
		vm.lin_weight = vm.weight;
		$("#modal-weight .modal-backdrop").unbind('click');
	},
	//下面都是取消的方法
	cancel_name:function(){
		$("#modal-name").modal('hide');
		vm.name = vm.lin_name;
		vm.is_name_error = false;
	},
	cancel_phone:function(){
		$("#modal-phone").modal('hide');
		vm.phone = vm.lin_phone;		
		vm.is_phone_error = false;
	},
	cancel_height:function(){
		$("#modal-height").modal('hide');
		vm.height = vm.lin_height;	
		vm.is_height_error = false;
	},
	cancel_weight:function(){
		$("#modal-weight").modal('hide');
		vm.weight = vm.lin_weight;		
		vm.is_weight_error = false;
	},	
	//下面都是保存方法
	v_name:function(){
		vm.is_name_error = false;
		//验证名称
		//验证不为空和字数
		if(volidate_js.is_notnull(vm.name)===false){
			vm.toast_msg = "称呼不能为空";
			vm.is_name_error = true;
			vm.is_toast_show = true;
			vm.clear_toast();
			return false;
		}
		if(vm.name.length > 12){
			vm.toast_msg = "称呼是12个字之内";
			vm.is_name_error = true;
			vm.is_toast_show = true;
			vm.clear_toast();
			return false;			
		}	
		$("#modal-name").modal('hide');
	},
	v_phone:function(){
		var $this = $(this);
		$this.button('loading');
		vm.is_phone_error = false;
		//验证手机
		if(vm.phone && volidate_js.is_phone(vm.phone) === false){
			vm.toast_msg = "手机格式输入有误";
			vm.is_phone_error = true;
			vm.is_toast_show = true;
			vm.clear_toast();
			$this.button('reset');
			return false;
		}else{
			$("#modal-phone").modal('hide');
			$this.button('reset');
		}
		//如果是本人就处理手机号的问题
		if(vm.flag == true || vm.flag == 'true'){
			if(vm.phone && volidate_js.is_phone(vm.phone) === true && vm.phone!=vm.lin_phone){
				$.ajax({
					type:"post",
					url:check_phone,
					dataType:"json",
					data:"phone="+vm.phone,
					success:function(data){
						$this.button('reset');
						if(data.status == "1"){
							$("#modal-phone").modal('hide');
						}else if(data.status == "2"){
							vm.toast_msg = "手机号已经被占用";
							vm.is_toast_show = true;
							vm.clear_toast();							
						}else{
							vm.toast_msg = "服务器异常";
							vm.is_toast_show = true;
							vm.clear_toast();							
						}
					},
					error:function(){
						$this.button('reset');
						vm.toast_msg = "网络错误";
						vm.is_toast_show = true;
						vm.clear_toast();						
					},
				});			
			}			
		}
		if(!vm.phone || vm.phone == vm.lin_phone){
			$("#modal-phone").modal('hide');
			$this.button('reset');
		}
	},
	v_weight:function(){
		vm.is_weight_error = false;
		//验证体重
		if(volidate_js.is_num(vm.weight) === false){
			vm.toast_msg = "体重要输入数字";
			vm.is_weight_error = true;
			vm.is_toast_show = true;
			vm.clear_toast();
			return false;
		}
		$("#modal-weight").modal('hide');
	},
	v_height:function(){
		vm.is_height_error = false;
		//验证身高
		if(volidate_js.is_num(vm.weight) === false){
			vm.toast_msg = "身高要输入数字" ;
			vm.is_height_error = true;
			vm.is_toast_show = true;
			vm.clear_toast();
			return false;
		}
		$("#modal-height").modal('hide');
	},	
	//标记是否处理了图片，这里用来区分用户是否上传过图片
//	is_upload_img:false,
	is_img_error:false,
	//toast的信息
	toast_msg:'',
	//是否要展示toast
	is_toast_show:false,
	//图片数据
	img_data:"",
	//后台存储文件的形式不是base64，所以传到前端的是一个路径，上面的img_data是用于进行修改的
	img_url:"",
	//称呼
	name:"",
	//临时保存的值
	lin_name:'',
	is_name_error:false,
	//性别，1是男，0是女
	sex:1,
	//改变性别
	change_sex:function(sex){
		vm.sex = sex;		
	},
	//出生日
	birth:"",
	lin_birth:"",
	is_birth_error:false,
	//手机号
	phone:'',
	lin_phone:"",
	is_phone_error:false,
	//身高
	height:'',
	lin_height:"",
	is_height_error:false,
	//体重
	weight:'',
	lin_weight:"",
	is_weight_error:false,
	//标记是否要进行裁剪
	is_crop:false,
	//点击上传头像
//	click_file:function(){
////		$("#upload_file").click();
//		vm.is_crop = true;
//	},
	click_datetime:function(){
		$("#datetime").click();
	},
	//定时器
	$timeout:0,
	//检测到文件变化
//	file_change:function(){
//		if(!$(this).val()){
//			return ;
//		}		
//		//获取文件
//		var file = this.files[0];
//		//文件类型判断
//		if(file.type.toLowerCase().indexOf('jpeg')==-1 && file.type.toLowerCase().indexOf('png')==-1 && file.type.toLowerCase().indexOf('jpg')==-1&& file.type.toLowerCase().indexOf('gif')==-1){
//				vm.is_crop = false;
//				vm.toast_msg = "该文件不是图片";
//				vm.is_toast_show = true;
//				vm.clear_toast();		
//				return ;
//		}			
//		var reader = new FileReader();
//		//注册事件
//		reader.onload = function(){
//			//获取图片的地址
//			var url = reader.result;
//			vm.img_url = vm.img_data = url;
//			$("#show_img").get(0).onload = function(){
//				if(vm.is_crop === false){
//					return ;
//				}
//				vm.is_crop = false;
//				var naturalHeight = this.naturalHeight;
//				var naturalWidth = this.naturalWidth;
//				//拿最小的那个
//				var wh = naturalHeight > naturalWidth ? naturalWidth : naturalHeight;
//				var canvas=$('<canvas width="'+naturalWidth+'" height="'+naturalHeight+'"></canvas>')[0],
//					ctx=canvas.getContext('2d');		
//				//要计算sx和sy的值
//				var sx=sy = 0;
//				if(naturalWidth>=naturalHeight){
//					sy = 0;
//					sx = (naturalWidth-naturalHeight)/2;
//				}else{
//					sx = 0;
//					sy = (naturalHeight-naturalWidth)/2;
//				}
//				var sWidth = sHeight = wh;
//				ctx.drawImage($('#show_img').get(0),sx,sy,sWidth,sHeight,0,0,naturalWidth,naturalHeight);
//				var mime_type = "image/jpeg";
//				var quality = 0.5; //质量比例
//				var data = canvas.toDataURL(mime_type, quality);
//				vm.img_url = vm.img_data = data;
//				vm.is_upload_img = true;
//			}
//		}
//		//读取文件
//		reader.readAsDataURL(file);
//	},
	//消息隐藏
	clear_toast:function(){
		//设置定时器
		if(vm.$timeout){
			clearTimeout(vm.$timeout);
		}
		vm.$timeout = setTimeout(function(){
			vm.is_toast_show = false;
			vm.toast_msg = '';
		},3000);		
	},
	/**
	 * 提交方法
	 */
	submit:function(){
		$(this).button('loading');
		var fd = new FormData();
		//判断是否上传过图片
		var is_upload_img = false;
		var length = vm.weixin_images.serverIds.size();
		if(length>0){
			fd.append('media_id_list', JSON.stringify(vm.weixin_images.serverIds));	
			is_upload_img = true;
		}
//		if(is_upload_img){
////			var blob = common.get_file(vm.img_data);
////			var blob = $("#upload_file")[0].files[0];
////			fd.append('file[]', blob, "a.png");	
//			fd.append('media_id_list', JSON.stringify(vm.weixin_images.serverIds));	
//		}
		fd.append('is_upload_img',is_upload_img);
		fd.append('img_url',vm.img_url);
		//其他参数
		fd.append('name',vm.name);
		fd.append('sex',vm.sex);
		fd.append('birth',vm.birth);
		fd.append('phone',vm.phone);
		fd.append('height',vm.height);
		fd.append('weight',vm.weight);
		fd.append('id',common.getUrlParam("id"));
		fd.append('flag',vm.flag);
		var $this = $(this);
		$.ajax({
			//地址要改
			url: update_url,
			type: 'POST',
			data: fd,
			processData: false,
			contentType: false,
			dataType:"json",
			success:function(data){
				if(data.status == "1"){
					vm.toast_msg = "操作成功";
					setTimeout(function(){
						history.go(-1);
					},1000);
				}else if(data.status == "2"){
					vm.toast_msg = "操作失败";
				}else{
					vm.toast_msg = "服务器异常";
				}
				$this.button('reset');
				vm.is_toast_show = true;
				vm.clear_toast();				
			},
			error:function(){
				$this.button('reset');
				vm.toast_msg = "网络错误";
				vm.is_toast_show = true;
				vm.clear_toast();				
			},
		});		
	}	
});
avalon.scan();
//加载数据
vm.load();
vm.init();
avalon.ready(function(){
	$('body').css('opacity',1);
});
